Today, many application programs provide user interface, particularly, graphical user interface (GUI), which typically include a set of user interface elements (e.g., buttons, scroll bars, drop-down list, input fields, etc.). These application programs are hereinafter referred to as the “core applications.” Sometimes, users of the core applications may uncover an error in the user interface and/or the user interface elements. Further, the users may desire to make a suggestion on the user interface and/or the user interface elements, such as how to improve a particular user interface element.
Conventionally, the users report the error found or submit the suggestion to a vendor of the core application using a reporting application separate from the core application. For example, the users may send an electronic mail reporting the error found to the vendor. However, the conventional approach suffers from many disadvantages. First, it is typically inconvenient for the users to invoke a separate reporting application to report the error and/or the suggestion, and thus, the users are typically unenthusiastic about reporting errors and/or submitting suggestions. Further, the users may submit duplicate error reports and/or suggestions because one user generally has no knowledge of other users' submissions. As a result, a commonly encountered error in the user interface may be reported multiple times by different users. Valuable program development resources (including labor and time) are wasted in reviewing duplicate error reports and/or suggestions.